Skip to content

Conversation

@mwitcpalek
Copy link
Contributor

No description provided.


@Override
public void zero() {
relSetpointOffset = ExampleConstants.kZeroTicks;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should be able to actually write to the encoder as we will have an encoder on the shaft that tilts the cage in (using a winch) instead of saving off a zero

@Override
public void periodic() {
// Read Inputs
io.updateInputs(inputs);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add processInputs(), see example subsystem

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will need to update/process both sets of inputs

return Set.of();
}

public enum ClimbState {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Likely will end up having more states, but we probably don't know enough yet to write them

private final ClimbWheelIO wheelIo;

private final ClimbArmIOInputsAutoLogged inputs = new ClimbArmIOInputsAutoLogged();

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to add wheelIOInputsAutoLogged as well

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

may want to rename so it is clear which is armInputs and which is wheelInputs

public void setPercent(double pct) {
logger.info("Setting percent to {}", pct);

talonFx.set(pct);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change this to a setControl with a dutycCycle request

import org.strykeforce.telemetry.measurable.MeasurableSubsystem;
import org.strykeforce.telemetry.measurable.Measure;

public class ClimbSubsystem extends MeasurableSubsystem implements ClosedLoopPosSubsystem {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assuming most of these are because you aren't done yet but you'll need methods like the following:

  • setSpeed() for the wheels
  • startClimb() to initiate state machine
  • isClimbFinished() to check state

@mwitcpalek mwitcpalek closed this Apr 12, 2025
@mwitcpalek mwitcpalek deleted the climb branch August 1, 2025 20:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants